/**
 * @fileOverview The "selectall" plugin provides an editor command that
 *               allows selecting the entire content of editable area.
 *               This plugin also enables a toolbar button for the feature.
 */
(function() {
   VED.plugins.add( 'selectall', {
      lang: 'en,ru', // %REMOVE_LINE_CORE%
      icons: 'selectall', // %REMOVE_LINE_CORE%
      init: function( editor ) {
         editor.addCommand( 'selectAll', { modes:{wysiwyg:1,source:1 },
            exec: function( editor ) {
               var editable = editor.editable();

               if ( editable.is( 'textarea' ) ) {
                  var textarea = editable.$;

                  if ( VED.env.ie )
                     textarea.createTextRange().execCommand( 'SelectAll' );
                  else {
                     textarea.selectionStart = 0;
                     textarea.selectionEnd = textarea.value.length;
                  }

                  textarea.focus();
               } else {
                  if ( editable.is( 'body' ) )
                     editor.document.$.execCommand( 'SelectAll', false, null );
                  else {
                     var range = editor.createRange();
                     range.selectNodeContents( editable );
                     range.select();
                  }

                  // Force triggering selectionChange (#7008)
                  editor.forceNextSelectionCheck();
                  editor.selectionChange();
               }

            },
            canUndo: false
         });

         editor.ui.addButton && editor.ui.addButton( 'SelectAll', {
            label: editor.lang.selectall.toolbar,
            command: 'selectAll',
            toolbar: 'selection,10'
         });
      }
   });
})();






